<?php

/*
 * Copyright 2008 the original author or authors.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#namespace tehframework\request\console;

#use tehframework\request\RequestBuilder;

/**
 * @todo
 */
class ConsoleRequestBuilder extends RequestBuilder
{
	const REQUEST_METHOD_ARGUMENT = '--method=';
	
	/**
	 * @return ConsoleRequest
	 */
	public function buildRequest()
	{
		return new ConsoleRequest(
			$this->resolveMethod(), $this->resolveParameters()
		);
	}
	
	/**
	 * @return Request::METHOD_*?
	 */
	private function resolveMethod()
	{
		$k = array_search(self::REQUEST_METHOD_ARGUMENT, $_SERVER['argv'], true);
		
		if ($k === null)
		{
			return null;
		}
	}
	
	/**
	 * @return array<string,mixed>
	 */
	private function resolveParameters()
	{
		return $_SERVER['argv'];
	}
}